package com.springboot.study.tests.collection;

/**
 * @Author: guodong
 * @Date: 2021/12/22 15:00
 * @Version: 1.0
 * @Description:
 */
class Info<T>{

    /**定义泛型变量
     *
     */
    private T var ;

    public void setVar(T var){
        this.var = var ;
    }

    public T getVar(){
        return this.var ;
    }

    @Override
    public String toString(){    // 直接打印
        return this.var.toString() ;
    }
}

public class GenericsDemo17{

    public static void main(String args[]){
        Info<Integer> i1 = new Info<Integer>() ;        // 声明Integer的泛型对象
        Info<Float> i2 = new Info<Float>() ;            // 声明Float的泛型对象
        i1.setVar(30) ;                                    // 设置整数，自动装箱
        i2.setVar(30.1f) ;                                // 设置小数，自动装箱
        fun(i1) ;
        fun(i2) ;
    }

    // 只能接收Number及其Number的子类
    public static void fun(Info<? extends Number> temp){
        System.out.print(temp + "、") ;
    }

}
